package com.zhl.methods_reference6;

import java.util.Arrays;
import java.util.Comparator;

public class Test2 {
    public static void main(String[] args) {
        String[] str = {"body", "Of", "the", "String", "literal", "is", "here", "Aans"};

        //进行排序   默认根据首字母的编号进行排序
        Arrays.sort(str);
        System.out.println(Arrays.toString(str));

        //要求忽略大小写进行排序
//        Arrays.sort(str, new Comparator<String>() {
//            @Override
//            public int compare(String s1, String s2) {
//                return s1.compareToIgnoreCase(s2);
//            }
//        });

        //简化
        Arrays.sort(str, (s1, s2) ->  s1.compareToIgnoreCase(s2));
        //进一步简化
        //特定类型方法的引用：
        //格式：
        //类名::方法名
        //使用场景：
        //如果某个Lambda表达式里只是调用一个实例方法,并且前面参数列表中的第一个参数是作为主调,后面的
        //所有参数都是作为该实例方法的入参的,则此时就可以使用特定类型的方法引用。
        Arrays.sort(str, String::compareToIgnoreCase);



    }
}
